// samsting : this file is auto create.

#include "Ecs/2014-05-26/DescribeDisksResponse.h"

namespace aliyun { namespace Ecs {

DescribeDisksResponse::DescribeDisksResponse() {
}

const string& DescribeDisksResponse::Disk::OperationLock::GetLockReason(void) const {
  return LockReason_;
}

const string& DescribeDisksResponse::Disk::Tag::GetTagKey(void) const {
  return TagKey_;
}

const string& DescribeDisksResponse::Disk::Tag::GetTagValue(void) const {
  return TagValue_;
}

const std::vector<DescribeDisksResponse::Disk::OperationLock>& DescribeDisksResponse::Disk::GetOperationLocks(void) const {
  return OperationLocks_;
}

const std::vector<DescribeDisksResponse::Disk::Tag>& DescribeDisksResponse::Disk::GetTags(void) const {
  return Tags_;
}

const string& DescribeDisksResponse::Disk::GetDiskId(void) const {
  return DiskId_;
}

const string& DescribeDisksResponse::Disk::GetRegionId(void) const {
  return RegionId_;
}

const string& DescribeDisksResponse::Disk::GetZoneId(void) const {
  return ZoneId_;
}

const string& DescribeDisksResponse::Disk::GetDiskName(void) const {
  return DiskName_;
}

const string& DescribeDisksResponse::Disk::GetDescription(void) const {
  return Description_;
}

const string& DescribeDisksResponse::Disk::GetType(void) const {
  return Type_;
}

const string& DescribeDisksResponse::Disk::GetCategory(void) const {
  return Category_;
}

int DescribeDisksResponse::Disk::GetSize(void) const {
  return Size_;
}

const string& DescribeDisksResponse::Disk::GetImageId(void) const {
  return ImageId_;
}

const string& DescribeDisksResponse::Disk::GetSourceSnapshotId(void) const {
  return SourceSnapshotId_;
}

const string& DescribeDisksResponse::Disk::GetProductCode(void) const {
  return ProductCode_;
}

bool DescribeDisksResponse::Disk::GetPortable(void) const {
  return Portable_;
}

const string& DescribeDisksResponse::Disk::GetStatus(void) const {
  return Status_;
}

const string& DescribeDisksResponse::Disk::GetInstanceId(void) const {
  return InstanceId_;
}

const string& DescribeDisksResponse::Disk::GetDevice(void) const {
  return Device_;
}

bool DescribeDisksResponse::Disk::GetDeleteWithInstance(void) const {
  return DeleteWithInstance_;
}

bool DescribeDisksResponse::Disk::GetDeleteAutoSnapshot(void) const {
  return DeleteAutoSnapshot_;
}

bool DescribeDisksResponse::Disk::GetEnableAutoSnapshot(void) const {
  return EnableAutoSnapshot_;
}

const string& DescribeDisksResponse::Disk::GetCreationTime(void) const {
  return CreationTime_;
}

const string& DescribeDisksResponse::Disk::GetAttachedTime(void) const {
  return AttachedTime_;
}

const string& DescribeDisksResponse::Disk::GetDetachedTime(void) const {
  return DetachedTime_;
}

const string& DescribeDisksResponse::Disk::GetDiskChargeType(void) const {
  return DiskChargeType_;
}

const string& DescribeDisksResponse::Disk::GetExpiredTime(void) const {
  return ExpiredTime_;
}

const std::vector<DescribeDisksResponse::Disk>& DescribeDisksResponse::GetDisks(void) const {
  return Disks_;
}

int DescribeDisksResponse::GetTotalCount(void) const {
  return TotalCount_;
}

int DescribeDisksResponse::GetPageNumber(void) const {
  return PageNumber_;
}

int DescribeDisksResponse::GetPageSize(void) const {
  return PageSize_;
}

const char* DescribeDisksResponse::BaseKey(void) {
  return "DescribeDisksResponse";
}

void DescribeDisksResponse::UnmarshallerMap(std::map<string, string>& response_map) {
  int Disks__length = 0;
  UnmarshallerInt(Disks__length, response_map, "DescribeDisksResponse.Disks.Length");
  if(Disks__length >= 0) {
    Disks_.resize(Disks__length);
    for(int i1 = 0; i1 < Disks__length; i1++) {
      int Disks_i1_OperationLocks__length = 0;
      UnmarshallerInt(Disks_i1_OperationLocks__length, response_map, "DescribeDisksResponse.Disks[+"+string_ValueOfInt(i1)+"].OperationLocks.Length");
      if(Disks_i1_OperationLocks__length >= 0) {
        Disks_[i1].OperationLocks_.resize(Disks_i1_OperationLocks__length);
        for(int i2 = 0; i2 < Disks_i1_OperationLocks__length; i2++) {
          UnmarshallerString(Disks_[i1].OperationLocks_[i2].LockReason_, response_map, "DescribeDisksResponse.Disks[+"+string_ValueOfInt(i1)+"].OperationLocks["+string_ValueOfInt(i2)+"].LockReason");
        } // for(int i2 = 0; i2 < Disks_i1_OperationLocks__length; i2++) {
      } // if(Disks_i1_OperationLocks__length >= 0) {

      int Disks_i1_Tags__length = 0;
      UnmarshallerInt(Disks_i1_Tags__length, response_map, "DescribeDisksResponse.Disks[+"+string_ValueOfInt(i1)+"].Tags.Length");
      if(Disks_i1_Tags__length >= 0) {
        Disks_[i1].Tags_.resize(Disks_i1_Tags__length);
        for(int i2 = 0; i2 < Disks_i1_Tags__length; i2++) {
          UnmarshallerString(Disks_[i1].Tags_[i2].TagKey_, response_map, "DescribeDisksResponse.Disks[+"+string_ValueOfInt(i1)+"].Tags["+string_ValueOfInt(i2)+"].TagKey");
          UnmarshallerString(Disks_[i1].Tags_[i2].TagValue_, response_map, "DescribeDisksResponse.Disks[+"+string_ValueOfInt(i1)+"].Tags["+string_ValueOfInt(i2)+"].TagValue");
        } // for(int i2 = 0; i2 < Disks_i1_Tags__length; i2++) {
      } // if(Disks_i1_Tags__length >= 0) {

      UnmarshallerString(Disks_[i1].DiskId_, response_map, "DescribeDisksResponse.Disks["+string_ValueOfInt(i1)+"].DiskId");
      UnmarshallerString(Disks_[i1].RegionId_, response_map, "DescribeDisksResponse.Disks["+string_ValueOfInt(i1)+"].RegionId");
      UnmarshallerString(Disks_[i1].ZoneId_, response_map, "DescribeDisksResponse.Disks["+string_ValueOfInt(i1)+"].ZoneId");
      UnmarshallerString(Disks_[i1].DiskName_, response_map, "DescribeDisksResponse.Disks["+string_ValueOfInt(i1)+"].DiskName");
      UnmarshallerString(Disks_[i1].Description_, response_map, "DescribeDisksResponse.Disks["+string_ValueOfInt(i1)+"].Description");
      UnmarshallerString(Disks_[i1].Type_, response_map, "DescribeDisksResponse.Disks["+string_ValueOfInt(i1)+"].Type");
      UnmarshallerString(Disks_[i1].Category_, response_map, "DescribeDisksResponse.Disks["+string_ValueOfInt(i1)+"].Category");
      UnmarshallerInt(Disks_[i1].Size_, response_map, "DescribeDisksResponse.Disks["+string_ValueOfInt(i1)+"].Size");
      UnmarshallerString(Disks_[i1].ImageId_, response_map, "DescribeDisksResponse.Disks["+string_ValueOfInt(i1)+"].ImageId");
      UnmarshallerString(Disks_[i1].SourceSnapshotId_, response_map, "DescribeDisksResponse.Disks["+string_ValueOfInt(i1)+"].SourceSnapshotId");
      UnmarshallerString(Disks_[i1].ProductCode_, response_map, "DescribeDisksResponse.Disks["+string_ValueOfInt(i1)+"].ProductCode");
      UnmarshallerBool(Disks_[i1].Portable_, response_map, "DescribeDisksResponse.Disks["+string_ValueOfInt(i1)+"].Portable");
      UnmarshallerString(Disks_[i1].Status_, response_map, "DescribeDisksResponse.Disks["+string_ValueOfInt(i1)+"].Status");
      UnmarshallerString(Disks_[i1].InstanceId_, response_map, "DescribeDisksResponse.Disks["+string_ValueOfInt(i1)+"].InstanceId");
      UnmarshallerString(Disks_[i1].Device_, response_map, "DescribeDisksResponse.Disks["+string_ValueOfInt(i1)+"].Device");
      UnmarshallerBool(Disks_[i1].DeleteWithInstance_, response_map, "DescribeDisksResponse.Disks["+string_ValueOfInt(i1)+"].DeleteWithInstance");
      UnmarshallerBool(Disks_[i1].DeleteAutoSnapshot_, response_map, "DescribeDisksResponse.Disks["+string_ValueOfInt(i1)+"].DeleteAutoSnapshot");
      UnmarshallerBool(Disks_[i1].EnableAutoSnapshot_, response_map, "DescribeDisksResponse.Disks["+string_ValueOfInt(i1)+"].EnableAutoSnapshot");
      UnmarshallerString(Disks_[i1].CreationTime_, response_map, "DescribeDisksResponse.Disks["+string_ValueOfInt(i1)+"].CreationTime");
      UnmarshallerString(Disks_[i1].AttachedTime_, response_map, "DescribeDisksResponse.Disks["+string_ValueOfInt(i1)+"].AttachedTime");
      UnmarshallerString(Disks_[i1].DetachedTime_, response_map, "DescribeDisksResponse.Disks["+string_ValueOfInt(i1)+"].DetachedTime");
      UnmarshallerString(Disks_[i1].DiskChargeType_, response_map, "DescribeDisksResponse.Disks["+string_ValueOfInt(i1)+"].DiskChargeType");
      UnmarshallerString(Disks_[i1].ExpiredTime_, response_map, "DescribeDisksResponse.Disks["+string_ValueOfInt(i1)+"].ExpiredTime");
    } // for(int i1 = 0; i1 < Disks__length; i1++) {
  } // if(Disks__length >= 0) {

  UnmarshallerInt(TotalCount_, response_map, "DescribeDisksResponse.TotalCount");
  UnmarshallerInt(PageNumber_, response_map, "DescribeDisksResponse.PageNumber");
  UnmarshallerInt(PageSize_, response_map, "DescribeDisksResponse.PageSize");
}


} } // namespace aliyun { namespace Ecs {

// end of file 
